Method for dynamic retention of HTTP session information and web application server and web server using the same

ABSTRACT

A web server is provided. The web server includes a communication part for receiving an HTTP request from an entity connected by network and communicating with at least one WAS; and a processor for performing at least one of (i) a process of transmitting the HTTP request received from the entity to a specific WAS selected among the at least one WAS and then receiving information on an HTTP session corresponding to the specific WAS from the specific WAS when receiving an HTTP response from the specific WAS in response to the HTTP request, thereby retaining the information on the HTTP session and (ii) a process of transmitting a PING signal and then receiving the information on the HTTP session corresponding to the specific WAS from the specific WAS when receiving a PONG signal in response to the PING signal, thereby retaining the information on the HTTP session.

CROSS REFERENCE TO RELATED APPLICATION

This application claims priority to and incorporates herein by referenceall disclosure in Korean Patent Application No. 10-2016-0048298 filedApr. 20, 2016.

FIELD OF THE INVENTION

The present invention relates to a method for retaining information onan HTTP session dynamically and a web application server (WAS) and a webserver using the same and more particularly, to the method for retainingthe information on the HTTP session as the method for the web serverperforming at least one of (i) a process of receiving an HTTP requestfrom an entity connected by network and transmitting the HTTP request toa specific WAS selected among at least one WAS and (ii) a process oftransmitting a PING signal to the at least one WAS and performing atleast one of (i) a process of receiving information on an HTTP sessioncorresponding to the specific WAS from the specific WAS when receivingan HTTP response from the specific WAS and thereby retaining theinformation on the HTTP session and (ii) a process of transmitting aPING signal and then receiving the information on the HTTP sessioncorresponding to the specific WAS from the specific WAS when receiving aPONG signal in response to the PING signal, thereby retaining theinformation on the HTTP session and the web application server and theweb server using the method.

BACKGROUND OF THE INVENTION

A web server means a server that receives a Hyper-Text Transfer Protocol(HTTP) request from a client, i.e., an entity requesting the World WideWeb (referred to as the “web”) service, and provides a response to theHTTP request, i.e., content including a webpage, to the client. Inaddition, a web application server or WAS means middleware that executesan application for a client through HTTP over a network.

In general, a web service adopts an interactive client-server paradigm.In response to a user's input, an interactive browser-based application(or other applications using HTTP) running on a client sets a connectionwhich is called an HTTP session by accessing a webpage retained by aserver in a relationship with a server application. The server respondsin real time and the browser, etc. render the response to display to theuser. In the most basic dialog level, it may be configured that the HTTPsession transmits a URL of a document required by a client thusrequesting the document (such as a webpage) and the server transmits acopy of the requested document thus responding to it. In many cases, theHTTP session includes a much more complicated data exchange. Forexample, the user accesses an online shopping mall, searches for avariety of items (or different webpages) on an online catalog at theshopping mall, provides a search parameter to search for an item theuser is interested in, selects a specific item to purchase and receivesinformation on charging and delivery from the shopping mall. All ofthese are conducted in a context of one single HTTP session.

To support a complicated interactive exchange in an HTTP session, aserver generally retains data including information on session, i.e.,session-sustainable data. That is, the session-sustainable datarepresents data used to keep a session state and preserved in the serverduring the lifecycle of the session. These session-sustainable data areretained in the server throughout the interactive exchange between theclient and the server when data packets are exchanged and the clientmoves from one webpage to another in the server environment. In general,the session-sustainable data are not repeated in individual data packetstransmitted between the client and the server, but may also be updatedby data generated internally by the server or by an input received fromthe client. These session-sustainable data are typically retained assession data objects such as Java™ Beans in the server.

In a server that provides a service to a client through the web, theremay be multiple HTTP sessions where multiple clients are active at acertain moment. Recently, requests for web services based on the HTTP,from the development of web technologies, the spread of the Internet,and smartphones, are continuously rising. In the future, the number ofusers of the web services will increase and the requests for handlingHTTP sessions in web services are also expected to be on the risebecause application services such as web games and social networkingservices (SNS) seem to be growing ever more popular. As such, in typicallarge web services, the number of simultaneously active sessions thatmust be supported may exceed the capacity of a single computer system.Nevertheless, the server must remain available and operational.Accordingly, a lot of service providers offer web services via aclustering method which is a method of linking many computer systemstogether to act like a single computer.

More specifically, one web server may handle an HTTP request bycommunicating with at least one WAS. Usually, the WAS may keep a user'slogon state by using the HTTP session and if it is difficult to servewith one WAS, then several WAS are employed to provide identicalservice. In this case, one web server may communicate with several WASand perform a function of distributing load on each WAS through anappropriate method.

In case of a new request without any HTTP session, the web servergenerally delivers it over to the WAS via round-robin. In case of a newrequest with an HTTP session, it is delivered to the WAS via stickysession routing. The round-robin refers to “a technique of deliveringeach request to each WAS in due turn” and the sticky session routingmeans “a method for delivering a request related to a particular sessionto a specific WAS retaining the session.” In the general case, thismethod may be an appropriate method for balancing loads betweenindividual WAS.

However, given the environment, including the cloud environment, wherethe configuration of the WAS is dynamically changed, a problematicsituation may occur. For instance, while two WAS are being used, onemore WAS may be added because there are considerable loads on the twoWAS. This may mean that there are many HTTP sessions already attached tothe two WAS. In response, one more WAS is added, but if the round-robinalone is used by each WAS for new requests, the web server would fail todistribute loads properly. Accordingly, to solve the problem, atechnology of preventing WAS that is handling HTTP sessions fromoverloading and enforcing effective load distribution over all the WAShas become required.

SUMMARY OF THE INVENTION

It is an object of the present invention to retain information on anHTTP session of each WAS and enhance effective dynamic load distributionof a web server by using the information on the HTTP session under asituation where an additional WAS communicating with the web server isadded or a configuration of the WAS is dynamically changed, or evenunder any other situation.

It is another object of the present invention to retain a consistentlyequivalent level of session load when several WAS handle identicalservices through such effective load distribution.

In accordance with one aspect of the present invention, there isprovided a web server, including: a communication part for receiving anHTTP request from an entity connected by network and communicating withat least one web application server (WAS); and a processor forperforming at least one of (i) a process of transmitting the HTTPrequest received from the entity to a specific WAS selected among the atleast one WAS and then receiving information on an HTTP sessioncorresponding to the specific WAS from the specific WAS when receivingan HTTP response from the specific WAS in response to the HTTP request,thereby retaining the information on the HTTP session and (ii) a processof transmitting a PING signal and then receiving the information on theHTTP session corresponding to the specific WAS from the specific WASwhen receiving a PONG signal in response to the PING signal, therebyretaining the information on the HTTP session.

In accordance with another aspect of the present invention, there isprovided at least one web application server, each including: acommunication part communicating with a web server; and a processor forperforming at least one of (i) a process of transmitting information onat least one HTTP session to the web server when transmitting an HTTPresponse to the web server in response to an HTTP request received fromthe web server through the communication part and (ii) a process oftransmitting information on the at least one HTTP session to the webserver when transmitting a PONG signal to the web server in response toa PING signal received from the web server through the communicationpart.

In accordance with still another aspect of the present invention, thereis provided a method for a web server retaining information on an HTTPsession, including steps of: (a) the web server performing at least oneof (i) a process of transmitting an HTTP request received from an entityconnected by network to a specific WAS selected among at least one WASand (ii) a process of transmitting a PING signal to the at least oneWAS; and (b) the web server performing at least one of (i) a process ofreceiving information on an HTTP session corresponding to the specificWAS when receiving an HTTP response from the specific WAS in response tothe HTTP request, thereby retaining the information on the HTTP sessionand (ii) a process of transmitting a PING signal and then receiving theinformation on the HTTP session corresponding to the specific WAS fromthe specific WAS when receiving a PONG signal in response to the PINGsignal, thereby retaining the information on the HTTP session.

In accordance with still yet another aspect of the present invention,there is provided a method for at least one WAS supporting a web serverto retain information on an HTTP session, including steps of: (a) the atleast one WAS performing at least one of (i) a process of receiving anHTTP request received by the web server from an entity connected bynetwork and (ii) a process of receiving a PING signal from the webserver; and (b) the at least one WAS performing at least one of (i) aprocess of transmitting an HTTP response to the web server withinformation on an HTTP session corresponding to the WAS, therebysupporting the web server to retain the information on the HTTP sessionand (ii) a process of transmitting a PONG signal in response to the PINGsignal to the web server with the information on the HTTP sessioncorresponding to the WAS, thereby supporting the web server to retainthe information on the HTTP session.

BRIEF DESCRIPTION OF THE DRAWINGS

Drawings necessary to explain embodiments to show technical solutionsmore clearly in embodiments of the present invention will be describedbriefly. Clearly, the drawings presented as shown below are just part ofthe embodiments of the present invention and other drawings may beobtained based on the drawings without inventive work for those skilledin the art:

FIG. 1 is a block diagram exemplarily illustrating a web server and atleast one WAS communicating with the web server.

FIG. 2 is a concept diagram exemplarily illustrating a situation wherethe web server receives an HTTP request.

FIG. 3 is a concept diagram exemplarily illustrating a situation wherethe WAS transmits an HTTP response to the web server.

FIG. 4 is a concept diagram exemplarily illustrating a situation wherethe WAS transmits and receives PING/PONG signals to and from the webserver.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

To make the objectives of the present invention, technical solutions andadvantages clear, detailed description of embodiments in which theinvention may be implemented will be discussed by referring to attacheddrawings. These embodiments are described in sufficient detail to enablethose skilled in the art to implement the invention.

Besides, in the detailed description and claims of the presentinvention, a term “include” and its variations are not intended toexclude other technical features, additions, components or steps. Otherobjectives, advantages and features of the present invention may berevealed partially from the specification and partially from theimplementation of the present invention. The following examples anddrawings may be provided as examples but they are not intended to limitthe present invention:

It is to be understood that the various embodiments of the presentinvention, although different, are not necessarily mutually exclusive.For example, a particular feature, structure, or characteristicdescribed herein in connection with one embodiment may be implementedwithin other embodiments without departing from the spirit and scope ofthe present invention. In addition, it is to be understood that theposition or arrangement of individual elements within each disclosedembodiment may be modified without departing from the spirit and scopeof the present invention. The following detailed description is,therefore, not to be taken in a limiting sense, and the scope of thepresent invention is defined only by the appended claims, appropriatelyinterpreted, along with the full range of equivalents to which theclaims are entitled. In the drawings, similar reference characters mayrefer to the same or similar functionality in several respects.

Unless otherwise indicated in the specification or clearly contradictedin the context, an item indicated in the singular includes those in theplural, unless otherwise required in the context. These embodiments maybe described in sufficient detail by referring to attached drawingsregarding the embodiments of the present invention to enable thoseskilled in the art to implement the invention.

FIG. 1 is a block diagram exemplarily explaining a web server 100 and atleast one WAS 200 communicating with the web server.

By referring to FIG. 1, there may be one or more WAS 200 communicatingwith the web server 100. Herein, the individual WAS were introduced asWAS 210, 220 and 230. However, these are examples which are illustratedas a WAS1 210, a WAS2 220 and a WAS_N 230, but the number of WAS is notlimited to these.

More specifically, the web server 100 may include a communication part101 and a processor 102. The communication part 101 of the web server100 may receive an HTTP request from an entity connected by network tothe web server 100, e.g., a client (not illustrated), and communicatewith the WAS 200. The processor 102 of the web server 100 may perform aprocess of retaining information on an HTTP session as explained below.

Moreover, the individual WAS 210, 220 and 230 may include communicationparts 211, 221, and 231 and processors 212, 222, and 232. As an example,the communication part 211 of the WAS1 210 may communicate with the webserver 100. The processor 212 of the WAS1 210 may perform a process ofcausing the communication part 211 to transmit information on at leastone HTTP session retained by the WAS1 210 to the web server 100 and thensupporting the web server 100 to retain the information on the HTTPsession.

FIG. 2 is a concept diagram roughly illustrating a situation where theweb server 100 delivers an HTTP request to the WAS1 210.

By referring to FIG. 2, if the web server 100 communicating with the atleast one WAS 200 receives an HTTP request from a client 300 through thecommunication part 101 of the web server, then the web server 100 maydeliver the HTTP request to a WAS (assumed as WAS1) under a certaindistribution method. The certain distribution method may be round-robin,sticky session routing, or a distribution method in the presentinvention to be explained later. If the HTTP request is a new requestwithout existing HTTP session, then an HTTP session may be created andnewly retained in the WAS1 210.

More specifically, an HTTP session has a characteristic of beingdestroyed under a timeout policy of the WAS or by logout of an HTTPclient. Accordingly, to make information on an HTTP session retained andchanged in real time on a WAS to be retained in a web server in realtime under the situation, following methods are used:

A first method is to adopt a method for individual WAS creating aresponse to an HTTP request delivered by the web server 100, and givinginformation on an HTTP session when the response is delivered to the webserver 100 as can be understood by referring to FIG. 3.

By referring to FIG. 3, the WAS1 210 in response to the HTTP requestreceived from the web server 100 may create an HTTP response and thentransmit it to the web server 100. At the time, the WAS1 210 maytransmit information on an HTTP session corresponding to the WAS1 210 tothe web server 100 as well as the HTTP response and thus the web server100 may support the retention of the HTTP session information on theWAS1. Accordingly, the web server 100 may receive the information on theHTTP session of each WAS whenever it receives or transmits an HTTPrequest/response from/to each WAS and retain the information.

A second method is to adopt a method for individual WAS creating a PONGsignal corresponding to a PING signal delivered by the web server 100,and giving information on an HTTP session when the PONG signal isdelivered to the web server 100, as can be understood by referring toFIG. 4.

By referring to FIG. 4, the PING signal and the PONG signal, separatefrom the HTTP request in FIG. 2 and the HTTP response in FIG. 3, may beused as means for managing connections between the web server 100 andthe WAS 200 and the information on the HTTP session may be maintainedhighly accurate because the signal may be given and received evenwithout any HTTP request. If the web server 100 transmits the PINGsignal to the WAS1 210 and the WAS1 210 receives the PING signal, theWAS1 210 may create the PONG signal in response to the PING signal anddeliver it to the web server 100. At the time, the WAS1 210 may transmitinformation on an HTTP session corresponding to the WAS1 210 with thePONG response to the web server 100, and the web server 100 may receiveand retain the information on the HTTP session of the WAS1. Accordingly,the web server 100 may receive and retain information on an HTTP sessionof each WAS whenever PING/PONG signals are given to, or received from,individual WAS 200. Even in a case where HTTP requests and HTTPresponses are not continuously transmitted and received, the web server100 may retain the information on the HTTP session of the WAS 200through periodic renewals. Herein, transmission and reception of thePING signal may be performed regardless of an HTTP request or also if noHTTP request is detected for a certain period of time.

A third method is to adopt a method for using both the first and thesecond methods.

A method of retaining information on an HTTP session of a WAS in realtime by a web server using such methods is provided.

If the web server 100 retains the information on the existing HTTPsessions of the WAS 200 under the method, then the web server 100 mayuse a distribution method which utilizes such information on theexisting HTTP sessions upon determining to which WAS a new HTTP requestwith undefined HTTP session is delivered and its handling is allocated.For instance, there may be a distribution method for dynamicallydistributing load of an HTTP session based on a criterion that the newHTTP request should be delivered to a specific WAS whose load of theHTTP session is lowest. In addition, there may be other criteria fordetermining an appropriate WAS as a recipient for delivery.

Additionally, if the web server 100 retains the information on theexisting HTTP session of the WAS 200 under the method, the web server100 may use a distribution method which distributes existing load of theWAS even for a request whose HTTP session is already defined. Under asituation where there are few new requests, existing multiple WAS mayhave relatively large amounts of HTTP sessions (i.e. with higher loads).In such a case, for instance, the web server may use a method fordynamically distributing the load of an HTTP session based on acriterion where the web server reallocates and delivers the HTTP requestand information on an existing HTTP session for an HTTP request whoseHTTP session is already defined on a specific WAS, to another specificWAS with the lowest load of HTTP sessions. This may reduce the loads onthe multiple WAS already with the relatively large number of HTTPsessions.

Compared to the existing method under which HTTP requests weredistributed statically by a web server without knowing information onHTTP sessions retained by each WAS, an advantage of technology explainedherein as the embodiment may be helpful for implementing a method fordistributing the load of HTTP sessions of all WAS by using informationon HTTP sessions retained by individual WAS even under a situation whereconfiguration of WAS may be dynamically changed, as the web serverretains the information on the HTTP session retained by each WAS. Forexample, parameters such as the number of HTTP sessions, size of an HTTPsession information, amount of computation required per HTTP session,and overhead required to reallocate the HTTP sessions could beconsidered as the criteria for load of the HTTP session used for suchdistribution strategy.

As can be understood by those skilled in the art, reception andtransmission of the signals explained above, such as HTTP request andresponse signals and PING and PONG signals, may be made by the webserver and the communication parts of the WAS and data includinginformation on an HTTP session may be retained and maintained by the webserver and processors (and/or memories) of the WAS and processes ofdynamic distribution of the HTTP session may be handled mainly by theprocessor of the web server but the present invention will not belimited to these. The description as explained above is one embodimentthat may implement the present invention, but it is not intended tolimit the present invention. Arbitrary modifications, equivalentalternatives and improvements in the principles and thought of thepresent invention will have to be included in the protective scope ofthe present invention.

Those skilled in the art may clearly understand that the presentinvention may be achieved only through combination of software andhardware or only through hardware based on the description of theaforementioned embodiment. The part contributing to the prior art or theobject of a technical solution of the present invention may be expressedin a form of software, and the computer software products may be storedin computer storage such as floppy disk, hard disk, and optical mediaand computing devices (that may be personal computers, servers, networkdevices, etc.) include several instructions in aforementioned methods toconfigure hardware devices for general use to perform a method under avariety of embodiments of the present invention or implement a systemmentioned in a variety of embodiments of the present invention. Thegeneral purpose hardware devices may include communication parts thatmay transmit or receive signals to or from external devices connectedwith a processor such as a CPU and a device separate from theaforementioned device to execute the instruction.

The processor may be connected with a memory such as ROM or RAM to storeinstructions as subjects of implementation, and such hardware device mayalso include a keyboard, a mouse, an external input device, or storageto receive codes prepared by developers.

In accordance with the present invention, a web server communicatingwith a WAS may retain information on an HTTP session of the WAS in realtime, and recognize load distributed to each WAS because the web servermay recognize the information on the HTTP session distributed over theindividual WAS.

In accordance with the present invention, in consideration of the loadand performance on the individual WAS, the web server may adopt astrategy for evenly distributing new HTTP requests (whose HTTP sessionsare not defined) and existing HTTP requests (whose HTTP sessions arealready defined) to the individual WAS, and may retain information onexisting HTTP sessions required to distribution tasks as such at thesame time.

In accordance with the present invention, it may be more favorable to aweb service with relatively higher load of the HTTP request/responses,particularly, compared to the amount of the information on the HTTPsession because the session information is managed between the webserver and the multiple WAS.

What is claimed is:
 1. A web server, comprising: a communication partfor receiving an HTTP request from an entity connected to the web serverby a network and communicating with at least one web application server(WAS); and a processor for (i) transmitting the HTTP request to aspecific WAS selected among the at least one WAS in response toreceiving the HTTP request from the entity, (ii) receiving informationon an HTTP session corresponding to the specific WAS from the specificWAS simultaneously with receiving an HTTP response from the specific WASin response to the specific WAS receiving the HTTP request, therebyretaining the information on the HTTP session at the web server, (iii)transmitting a PING signal to the specific WAS responsive to failing toreceive a subsequent HTTP request from the entity during a specifiedperiod of time following delivery of the HTTP request to the specificWAS, and (iv) receiving the information on the HTTP sessioncorresponding to the specific WAS from the specific WAS simultaneouslywith separately receiving a PONG signal from the specific WAS inresponse to the specific WAS receiving the PING signal, thereby againretaining the information on the HTTP session at the web server, andwherein the information on the HTTP session includes a number of HTTPsessions managed by the specific WAS and an amount of overhead requiredto reallocate the HTTP sessions managed by the specific WAS to others ofthe at least one WAS; wherein, if the communication part receives a newrequest whose HTTP session is defined and the HTTP session of the newrequest is allocated to a first WAS, then the processor reallocates anddelivers the new HTTP request and the retained information on the HTTPsession to a second WAS that meets a first predetermined allocationcriterion by using the retained information on the HTTP session.
 2. Theweb server of claim 1, wherein, if the communication part receives a newrequest whose HTTP session is undefined, then the processor newlyallocates a handling of the new request whose HTTP session is undefinedto a certain WAS that meets a second predetermined allocation criterionby using the retained information on the HTTP session.
 3. At least oneweb application server (WAS), each comprising: a communication partcommunicating with a web server; and a processor for (i) receiving,through the communication part, an HTTP request from a web server inresponse to the web server receiving the HTTP request from an entityconnected to the web server by a network, (ii) transmitting informationon at least one HTTP session to the web server simultaneously withtransmitting an HTTP response to the web server in response to receivingthe an HTTP request (iii) receiving, through the communication part, aPING signal from the web server in response to the web server failing toreceive a subsequent HTTP request from the entity during a specifiedperiod of time following delivery of the HTTP request to the processor,and (iv) transmitting the information on the at least one HTTP sessionto the web server simultaneously with separately transmitting a PONGsignal to the web server in response to receiving the PING signal, andwherein the information on the HTTP session includes a number of HTTPsessions managed by a certain WAS and an amount of overhead required toreallocate the HTTP sessions managed by the WAS to others of the atleast one WAS; wherein, while the existing HTTP session of the requestis allocated to a first WAS, if the web server intends to reallocate anddeliver a new HTTP request and the retained information on the HTTPsession to a second WAS that meets a first predetermined allocationcriterion by using the retained information on the HTTP session, thenthe communication part of the second WAS receives information on a factthat the new request has been reallocated to the second WAS.
 4. The WASof claim 3, wherein, if the web server receives a new request where HTTPsession is undefined and intends to newly allocate a handling of the newrequest whose HTTP session is undefined to a certain WAS that meets asecond predetermined allocation criterion by using the retainedinformation on the HTTP session, then the communication part of thecertain WAS receives the information.
 5. A method for a web serverretaining information on an HTTP session, comprising steps of: (a)receiving an HTTP request from an entity connected to the web server bya network; (b) the web server (i) transmitting the HTTP request to aspecific WAS selected among at least one WAS in response to receivingthe HTTP request from the entity and (ii) receiving information on anHTTP session corresponding to the specific WAS simultaneously withreceiving an HTTP response from the specific WAS in response to thespecific WAS receiving the HTTP request, thereby retaining theinformation on the HTTP session at the web server; and (c) the webserver (i) transmitting a PING signal to the specific WAS responsive tofailing to receive a subsequent HTTP request from the entity during aspecified period of time following delivery of the HTTP request to thespecific WAS and (ii) receiving the information on the HTTP sessioncorresponding to the specific WAS from the specific WAS simultaneouslywith separately receiving a PONG signal from the specific WAS inresponse to the PING signal, thereby retaining the information on theHTTP session at the web server, and (d) the web server, if receiving anew request whose HTTP session is defined and already allocated to afirst WAS, then reallocating and delivering the new HTTP request and theretained information on the HTTP session to a second WAS that meets afirst predetermined allocation criterion by using the retainedinformation on the HTTP session; wherein the information on the HTTPsession includes a number of HTTP sessions managed by the specific WASand an amount of overhead required to reallocate the HTTP sessionsmanaged by the specific WAS to others of the at least one WAS.
 6. Themethod of claim 5, further comprising a step of: (e) the web server, ifreceiving a new request whose HTTP session is undefined, newlyreallocating a handling of the new request to a certain WAS that meets asecond predetermined allocation criterion by using the retainedinformation on the HTTP session.
 7. A method for at least one webapplication server (WAS) supporting a web server to retain informationon an HTTP session, comprising steps of: (a) the at least one WAS (i)receiving an HTTP request from a web server in response to the webserver receiving the HTTP request from an entity connected to the webserver by network and (ii) transmitting an HTTP response to the webserver simultaneously with information on an HTTP session correspondingto the at least one WAS, thereby supporting the web server to retain theinformation on the HTTP session at the web server; and (b) the at leastone WAS (i) receiving a PING signal from the web server in response tothe web server failing to receive a subsequent HTTP request from theentity during a specified period of time following delivery of the HTTPrequest to the at least one WAS and (ii) transmitting the information onthe HTTP session corresponding to the WAS to the web serversimultaneously with separately transmitting a PONG signal in response toreceiving the PING signal, thereby supporting the web server to retainthe information on the HTTP session at the web server, and (c) while theweb server receives a new request whose HTTP session is defined andalready allocated to a first WAS, if the web server intends toreallocate and deliver the new HTTP request and the retained informationon the HTTP session to a second WAS that meets a first predeterminedallocation criterion by using the retained information on the HTTPsession, then the second WAS receives information on a fact that the newrequest has been reallocated to the second WAS; wherein the informationon the HTTP session includes a number of HTTP sessions managed by acertain WAS and an amount of overhead required to reallocate the HTTPsessions managed by the WAS to others of the at least one WAS.
 8. Themethod of claim 7, further comprising a step of: (d) if the web serverreceives a new request whose HTTP session is undefined and intends tonewly reallocate a handling of the new request to a certain WAS thatmeets a second predetermined allocation criterion by using the retainedinformation on the HTTP session, the certain WAS receiving informationon a fact that the new request has been allocated to the certain WAS.